package com.smh.a01throwDemo1;

public class ThrowDemo1 {
    public static void main(String[] args) {
//throws:写在方法定义处，表示声明一个异常。告诉调用者，使用本方法可能会有哪些异常。
//throw :写在方法内，结束方法。手动抛出异常对象，交给调用者。方法中下面的代码不再执行了。

        int[] arr = null;
        int[] arr2 = null;
        int max = getMax(arr);
        int max2 = getMax(arr2);
        System.out.println(max);
        System.out.println(max2);


    }

    //运行时异常可以省略不写->                 |
    //                                     |
    public static int getMax(int[] arr) /*throws NullPointerException,ArrayIndexOutOfBoundsException*/ {
        if (arr == null) {
            throw new NullPointerException();
        }
        if (arr.length == 0) {
            throw new ArrayIndexOutOfBoundsException();
        }
        System.out.println("zhixingle");
        int max = arr[0];
        for (int i : arr) {
            if (i > max) {
                max = i;
            }
        }
        return max;
    }
}
